1. Field of the Invention
The present invention relates to a transmitter and a receiver for use in a network communication system such as an ATM (asynchronous transfer mode) communication system and a packet communication system so as to effect communication of cells or packets on the basis of a variable rate encoding method.
2. Description of the Related Art
A packet communication system in which a voice signal is coded and is then packetized to effect communication in units of packets is becoming realized.
The packet communication system offers the advantage that signals of various media, such as voice, images and data, can be handled unitarily, and that the efficient use of a line can be realized by transmitting signals only during talk spurt sections.
In the packet communication, however, during the congestion of a network or when a packet delay is large, packets are discarded, with the result that deterioration of voice quality occurs.
Particularly when ADPCM (adaptive differential pulse-code modulation) using adaptive estimation is employed as an encoding method, the deterioration of quality during discarding of packets is large.
Accordingly, as an encoding method in which the deterioration of quality during discarding of packets is light, an embedded DPCM method has been proposed in "Embedded DPCM for variable bit rate transmission," [IEEE trans. COM-28, 7, pp. 1040-1046 (July 1980); referred to as literature 1].
In addition, in CCITT SGXVIII "Annex to Question X/XV (Speech Packetization) Algorithm and Protocol for Speech Packetization," [TD131, Geneva 6-17 June 1988; referred to as literature 2], CCITT has provisionally recommended embedded ADPCM as G, EMB as an encoding method for speech packet communication and the protocol for speech packetization as G, PVNP.
FIGS. 15 and 16 show block diagrams of an encoder section and a decoder section of the provisionally recommended G, EMB system.
In the encoder section shown in FIG. 15, an input to an input terminal 600 is a voice signal digitized by .mu.-PCM or A-PCM coding method. A PCM format converter 610 converts a .mu.-PCM or A-PCM code to a linear PCM code. A subtracter 620 calculates the difference between the input signal and an estimated signal, i.e., an output of an adaptive estimator 670, and transmits an estimated differential signal to an adaptive quantizer 630. The adaptive quantizer 630 quantizes the estimated differential signal inputted thereto, and outputs the same as an ADPCM code.
A bit masking circuit 640 masks less significant bits of the output code of ADPCM by the maximum number of bits that can be discarded, and shifts the remaining bits to the right. The output of the bit masking circuit 640 is transmitted to an adaptive inverse quantizer 650 as core bits, and the adaptive inverse quantizer 650 inversely quantizes the core bits. The output of the adaptive inverse quantizer 650 is transmitted to the adaptive estimator 670 and an adder 660. The adder 660 also prepares a local decoding signal by adding the output signal of the adaptive inverse quantizer 650 and the output signal of the adaptive estimator 670. The adaptive estimator 670 is an adaptive filter which has quadratic poles and sextic zero points, receives as its inputs the local decoded signal and the inversely quantized estimated differential signal, and creates an estimated signal.
The number of bits of the adaptive quantizer 630 and the number of core bits fed back depend on an algorithm used. For instance, in the case of a 32 Kbps (4, 2) algorithm, four bits are used for quantization, and two bits as core bits.
In FIG. 15, the adaptive quantizer 630 forms a feed forward path, while the bit masking circuit 640, the adaptive inverse quantizer 650, and the adaptive estimator 670 form a feedback path.
A description will now be given of the operation of the decoder section.
In the same way as the above-described encoder section, the decoder section shown in FIG. 16 comprises a feedback path including a bit masking circuit 680, a feedback adaptive inverse quantizer 690, and an adaptive estimator 710, and a feed forward path including a feed forward adaptive inverse quantizer 720 and a PCM format converter 740. The feedback path of the encoder section and that of the decoder section are utterly the same.
In FIG. 16, the bit masking circuit 680 masks less significant bits by leaving more significant core bits of the ADPCM code inputted thereto, and shifts the remaining bits to the right, thereby transmitting only the core bits to the feedback adaptive inverse quantizer 690. Here, the feedback adaptive inverse quantizer 690 inversely quantizes the core bits. The adaptive estimator 710 receives as its inputs the inversely quantized estimated differential signal, i.e., the output of the feedback adaptive inverse quantizer 690, and a local decoded signal, i.e., an output of an adder 700, and outputs an estimated signal.
The discarding of bits on a network is effected starting with the least significant bit of the ADPCM code, and the transmission of core bits is ensured.
For this reason, the same output as that of the encoder section-side bit masking circuit 640 is obtained as the output of the decoder section-side bit masking circuit 680. Accordingly, the outputs of the adaptive inverse quantizers 690, 650 and the adaptive estimators 710, 670 are utterly identical for the encoder section and the decoder section.
The feed forward adaptive inverse quantizer 720 inversely quantizes the core bits of the ADPCM output code and the bits which remained without being discarded. An adder 730 adds together the output of the feed forward adaptive inverse quantizer 720 and the output of the adaptive estimator 710 so as to form a decoded signal. The decoded signal thus obtained is outputted to the PCM format converter 740 where the linear PCM code is converted to the .mu.-PCM or A-PCM code.
A tandem connection correcting circuit 750 is used to prevent errors due to synchronous tandem connection as in ADPCM-PCM-ADPCM.
In cases where the discarding of bits of the output code occurs in normal ADPCM which is not embedded, the inversely quantized estimated differential signal assumes different values between the encoder section and the decoder section. As a result, the adaptation processing of the quantizer and the estimator undergoes different asynchronous operation between the encoder section and the decoder section. In addition, since the error due to discarding is subjected to filtering by a synthesis filter and increases as a result, the deterioration of voice quality due to the discarding of bits becomes more pronounced.
Meanwhile, in the aforementioned embedded ADPCM, since only the core bits are fed back to the estimator, even if the less significant bits excluding the core bits are discarded on the network, the asynchronous operation of the encoder section and the decoder section does not occur.
In addition, since the estimated signals are identical in the encoder section and the decoder section, a quantization error corresponding to the number of bits discarded only directly affects the decoded signal, and the deterioration of quality due to the discarding of bits is light.
A method of configuration and a protocol of a voice packet which make use of such characteristics of embedded ADPCM are described in the aforementioned literature 2.
FIG. 17 is a packet format described in literature 2, and bit 1 and bit 8 indicate LSB and MSB, respectively. PD (protocol discriminator) discriminates between voice packets and the other packets. BDI (block dropping indicator) indicates the number of blocks that can be discarded in a packetized initial state and the number of blocks that can be discarded on the nodes of the network. The block referred to herein means information in the unit of 128 bits in which, by setting the length of a coded frame to be 16 ms (128 samples), coded outputs of voice are collected in bits for one frame. TS (time stamp) shows a cumulative total of an amount of delay occurring in each node of the network. CT (coding type) is a field indicating a method of voice encoding used in packetization. SEQ (sequence number) indicates a serial number of the packet and is used for ascertaining such as the loss of the packet. NS (noise field) is a field indicating the level of background noise. NON-DROPPABLE OCTETS represents a block of core bits of an embedded ADPCM output and is the field of information which cannot be discarded on the network. OPTIONAL DROPPABLE BLOCKS is a block of less significant bits and is a field which can be discarded when so requested by the system on the network. The header and trailer of layer 2 are attached to the leading and trailing ends of the packet, respectively.
In the protocol of the packet network using the packet provided with the format shown in FIG. 17, the discarding of packets is effected by discarding the OPTIONAL DROPPABLE BLOCKS in the packet.
In the above, a method of compensating for the discarding of packets on the basis of the conventional embedded ADPCM and packet format will now be described.
According to this method, in a case where the discarding of information takes place within a packet, i.e., in units of bits, the deterioration of quality is light, as described above. However, in a case where discarding occurs in units of packets, since the core bits of embedded ADPCM are also discarded, the deterioration of the quality occurs. As a result of the discarding of the packet, the signals of one frame (16 ms) drop completely, so that reproduction of the original voice signals becomes impossible. This state does not end with one frame, and since the encoder section and the decoder section operate asynchronously, this state continues for more than one frame.
Although, as a method of compensating for discarding in units of packets, a method is known in which compensation and reproduction are effected from the signals of packets immediately preceding and following the discarded packet. According to this method, however, since the estimated differential signal which is an ADPCM output is a signal in which correlation has been eliminated, even if interpolation is effected by using a sample which is one frame (128 samples) apart, there is practically no advantage of interpolation. Hence, the deterioration of quality has been unavoidable.
With the conventional encoding method using embedded ADPCM in the above-described manner, there have been problems in that since core bits of embedded ADPCM are also discarded when discarding has taken place in units of packets, it becomes impossible to reproduce the original voice signals, and that since the encoder section and the decoder section operate asynchronously, the deterioration of quality is intense.
In addition, with the conventional embedded ADPCM, no active consideration has been given to changing the bit rate with time, and no sufficient examination has been conducted on the method of controlling the bit rate and the formation of cells of a fixed length.
In contrast, the amount of information which is present in a voice signal generally changes with time. Hence, according to the embedded ADPCM using a fixed bit rate, there have been problems in that the quality of encoded voice changes and is unpleasant to the ear, and that the encoding efficiency declines.